﻿// Decompiled with JetBrains decompiler
// Type: DnProcessSimulateCommands.CApDisAutomaticDisassemblyDlgData
// Assembly: DnProcessSimulateCommands, Version=2402.0.0.890, Culture=neutral, PublicKeyToken=null
// MVID: A885D881-AEDF-447E-852A-6F13102E089C
// Assembly location: C:\Program Files\Tecnomatix_2402\eMPower\DotNetCommands\DnProcessSimulateCommands.dll


namespace DnProcessSimulateCommands;

public class CApDisAutomaticDisassemblyDlgData
{
  private CApDisAutomaticDisassemblyDlgData.DisassemblyDistanceMode m_distanceMode;
  private CApDisAutomaticDisassemblyDlgData.DisassemblyDirectionType m_directionType;
  private double m_distanceValue;
  private double m_operationDuration;
  private string m_operationType;
  private bool m_useAutomaticPathPlanner;
  private double m_precision;
  private double m_clearance;

  public CApDisAutomaticDisassemblyDlgData()
  {
    this.DirectionType = CApDisAutomaticDisassemblyDlgData.DisassemblyDirectionType.None;
    this.DistanceMode = CApDisAutomaticDisassemblyDlgData.DisassemblyDistanceMode.Automatic;
    this.DistanceValue = 100.0;
    this.OperationDuration = 5.0;
    this.OperationType = "";
    this.m_useAutomaticPathPlanner = false;
    this.m_precision = 0.0;
    this.m_clearance = 0.0;
  }

  public CApDisAutomaticDisassemblyDlgData.DisassemblyDistanceMode DistanceMode
  {
    get => this.m_distanceMode;
    set => this.m_distanceMode = value;
  }

  public CApDisAutomaticDisassemblyDlgData.DisassemblyDirectionType DirectionType
  {
    get => this.m_directionType;
    set => this.m_directionType = value;
  }

  public double DistanceValue
  {
    get => this.m_distanceValue;
    set => this.m_distanceValue = value;
  }

  public double OperationDuration
  {
    get => this.m_operationDuration;
    set => this.m_operationDuration = value;
  }

  public string OperationType
  {
    get => this.m_operationType;
    set => this.m_operationType = value;
  }

  public bool UseAutomaticPathPlanner
  {
    get => this.m_useAutomaticPathPlanner;
    set => this.m_useAutomaticPathPlanner = value;
  }

  public double Precision
  {
    get => this.m_precision;
    set => this.m_precision = value;
  }

  public double Clearance
  {
    get => this.m_clearance;
    set => this.m_clearance = value;
  }

  public enum DisassemblyDirectionType
  {
    None = -1, // 0xFFFFFFFF
    Disassembly = 0,
    AssemblyDisassembly = 1,
    DisassemblyShortestPathSequence = 2,
    AssemblyShortestPathSequence = 3,
  }

  public enum DisassemblyDistanceMode
  {
    Automatic,
    Exact,
  }
}
